

package com.example.fw;

public class ContactHelper extends HelpersBase {

        public ContactHelper(ApplicationManager applicationManager) {
                super(applicationManager);
        }

        public void createContact(Contact contact) {
                initContactCreation();
                fillContactCreation(contact);
                confirmContactCreation();
        }
       
        private void initContactCreation() {
                manager.getAutoItHelper()
                    .winWaitAndActivate("AddressBook Portable", "", 5000)
                    .click("Add").winWaitAndActivate("Add Contact", "", 5000);
        }

        private void fillContactCreation(Contact contact) {
                manager.getAutoItHelper()
                	.send("TDBEdit12", contact.getFirstName())
                    .send("TDBEdit11", contact.getLastName());
        }

        private void confirmContactCreation() {
                manager.getAutoItHelper()
                	.click("Save")
                    .winWaitAndActivate("AddressBook Portable", "", 5000);
        }

        public Contact getFirstContact() {
                manager.getAutoItHelper()
                    .winWaitAndActivate("AddressBook Portable", "", 5000)
                    .click("TListView1")
                    .send("{DOWN}{SPACE}")
                    .click("Edit")
                    .winWaitAndActivate("Update Contact", "", 5000);
                Contact contact = new Contact()
                	.setFirstName(manager.getAutoItHelper().getText("TDBEdit12"))
                    .setLastName(manager.getAutoItHelper().getText("TDBEdit11"));
                manager.getAutoItHelper()
                	.click("Cancel")
                    .winWaitAndActivate("AddressBook Portable", "", 5000);
                return contact;
        }

        public void deleteFirstContact() {
                manager.getAutoItHelper()
                .focus("TListView1")
                .send("{DOWN}{SPACE}")
                .click("Delete")
                .winWaitAndActivate("Confirm", "", 5000);

                manager.getAutoItHelper()
                .click("&Yes")
                .winWaitAndActivate("AddressBook Portable", "", 500);
        }
}